The present invention relates to the accessing or to the sharing of a digital document in a communication network of distributed type commonly referred to as having “peer-to-peer” topology, and more particularly to accessing a data item of a digital document, from any station of the network, on the basis of another data item of the same digital document.
As from the last few years, peer-to-peer networks have become an alternative to the client-server systems widely used up till now. This is because, due to their distributed architecture, peer-to-peer networks make it possible to share a high quantity of digital data between a large number of users, without this necessitating a costly infrastructure.
In practice, in a peer-to-peer network, each station plays the role of client and server. Thus, each station can request a data item or a digital document from any other station of the network and the exchange of data may be carried out directly from one station to another.
In what follows, the term “document or digital data item” applies equally to images or digital videos, or to digital texts.
Generally, the same digital document comprises at least first and second data items connected to each other according to an edition relationship of hierarchical type and/or quality in terms of resolution, version, language, size or content. In practice, the original data item (referred to here as second data item of the digital document to share) has the highest resolution and the data item having the lowest resolution is referred to as a thumbnail (and corresponding here to the first data item of the digital document to share).
In the case in which the digital document is an image, the original data item corresponds to the original image, that is to say at full resolution, and the thumbnail corresponds to an image of lower resolution.
In the case in which the digital document is a video, the original data item corresponds to the sequence of original images and the thumbnail corresponds, for example, to the first image of the video at a lower resolution than the resolution of the original video.
Currently the distribution of data increasingly relies on peer-to-peer networks due to their low-cost installation, due to the presence of very numerous computers connected to the network, and also due to the development of broadband connections.
However, peer-to-peer networks are unstable. This is because client devices (and consequently server devices) connect and disconnect periodically to the network, thus rendering the presence of data highly unpredictable. Furthermore, the addresses of client and/or server devices are unpredictable and liable to be different at each connection.
The result of this is that access to content on a communication network of peer-to-peer type still constitutes a considerable difficulty since the lag in obtaining the data item is no longer simply due to the time necessary for retrieval of the data as in the conventional client-server topology, but also in the time for searching for a server device having that data item. According to the topology of the peer-to-peer network concerned, this searching phase may or may not be negligible.
To remedy these drawbacks, one solution consists of using a central server which guarantees a minimum quality of service. This then referred to as a hybrid peer-to-peer network.
In practice, sharing a digital document over a peer-to-peer communication network consists of the following known succession of steps:                selecting the document to share;        associating a unique identifier making it possible to find the location of the document on the network;        calculating a thumbnail on the basis of the original data item;        updating an index table at the central server by associating an identifier of the shared document with one (or several) station(s), each of these stations being server for the document.        
This known succession of steps is used in most peer-to-peer networks to share a document with a community of users, that is to say that anyone may access the shared document provided that person knows the identifier. This is then referred to as public sharing.
By contrast, it is possible to share a document with a group of friends and to restrict the access to that document to that group of friends. This then referred to as restricted access sharing (private sharing).
In this case, the private sharing of a document necessitates two additional steps:                selecting the recipients;        sending notification to each of those recipients so as to inform them that a new document has been shared.        
In practice, the present invention is in no way modified whether one or the other of these sharing systems is used. In what follows, the present invention is described in the case in which the document is publicly shared.
The stations of a peer-to-peer network are in general computers connected to the network through the wired network. Nevertheless, any type of apparatus may connect to that network. For example, a mobile telephone or a personal digital assistant. According to their capacities (memory, calculation capacity) it is possible for these apparatuses not to play their role of servers (for example mobile telephones). These cases are referred to as thin stations which only provide the client function of a station, that is to say a passive role which consists of looking at the documents or digital data which are sent to them and of sharing but however not serving the data.
One of the problems to be solved is thus to share digital documents from any digital apparatus, whether that apparatus be a station in its own right, or a thin station.
The sharing mechanism of the prior art, described above, implies that the station from which the sharing arises plays the role of server. In the opposite case, that is to say when the sharing arises from a thin station, only the thumbnail is actually shared, the original data item being stored on the thin station which cannot serve it. In fact, that original data item is accessible once it has been stored on a station in its own right, playing the role of server.
The problem to solve can thus be described by means of the following example:
Further to some photographs having been taken, a user wishes to share them (or some of them) from a thin station (typically a mobile telephone). When another user requests the original data item via the document identifier, that original data item is not accessible via the sharing system.
If we now have the photograph taker making that original data item accessible from another station (different from the thin station with which he shared the thumbnail), the problem is thus to match the original data item with the thumbnail (allocation of the same identifier) such that the station which stores that original data item can serve a request comprising that identifier.
In other words, the problem is to synchronize the two versions of different resolution (referred to here as first and second data items of a first document) of a digital document when the two versions are shared at different times or from different stations (referred to here as first and second documents).
Once a document has been shared, that is to say that the thumbnail and the original data item are associated with a unique identifier, any user may access the original data item on the basis of that identifier. This implies that the identifier is associated with the thumbnail before the thumbnail has been retrieved by another user. If this is not the case, the search mechanism described earlier cannot be used since the identifier is not known to the station which sends out the request.
For example two users exchange a thumbnail of a digital document without the identifier being attributed to that thumbnail. In this example, the sending user takes a photograph with a digital camera and sends a thumbnail of that photograph to the camera of the receiving user via a short-range radio link for example. As a variant, the photograph is sent at the original resolution, but the camera of the receiving user cannot store that photograph due to a lack of memory space. At that time, the receiving apparatus generates a thumbnail on the basis of the original image received. It may be noted that the thumbnail of the receiving user may be different from that generated by the camera of the sending user since the sub-sampling processes are not necessarily the same. The same type of scenario can also be imagined on the basis of mobile telephones or any other digital apparatus, including in particular microcomputers (sending out of the thumbnail by email). Similarly, the data (original and thumbnail) may be taken from apparatuses which cannot be equated to stations of a peer-to-peer communication network since they do not have sufficient storage capacities and/or cannot remain continuously connected to the network. Thus the invention is used when the sending user downloads the original data and the thumbnail onto a station and the receiving user downloads the thumbnail onto another station of the network.
The problem to solve thus consists of associating a unique identifier with the thumbnail (first data item of a first digital document) and the original digital data (second data item of the first digital document) stored on the station of the sending user and to associate that same identifier with the thumbnail (first data item of a second document) stored on the station of the receiving user. That receiving user can thus access all the versions of the digital document on the basis of that identifier, according to the search mechanism conventionally used in peer-to-peer sharing systems.
In other words, the problem consists of synchronizing the two documents (different resolutions and different sources) of the same digital document, that is to say that the same unique identifier is to be attributed to them as soon as those documents are accessible.
Several systems currently exist which describe synchronization of digital documents in the context of collaborative editing. These systems enable editing of a document to be performed remotely, the system synchronizing the different modifications made to the document.
The problem is nevertheless different in the case of sharing a multi-resolution document since the versions of the data are no longer modified once shared and the user receives the new version only when he has requested it.
For example, U.S. Pat. No. 5,949,551 describes a system for high quality printing of multi-resolution documents. Further to sending an image on paper by post, the system digitizes the image so as to create an original digital version of the image and a version at lower resolution (thumbnail). Next, the thumbnail is sent to the client or to an intermediary machine. The client may retrieve that thumbnail from that intermediary if he specified this at the time of making his order from the printing service. The system next calculates a time limit at the end of which the image at full resolution must be sent to the client. This time depends on several parameters: time limit imposed by the client, the resource of the communication network. During this period, the full resolution image is sent by a second means of communication, different from the first means used for sending the thumbnail. If sending was not possible within the given time, the system detects the problem and reports an item of information to the client.
This system does not require synchronization of the two image versions which are generated by the same machine. This is because the same identifier is associated with the thumbnail and the original data item from the time of their creation. This identifier is sent to the client or to the intermediary machine at the same time as the thumbnail. This identifier makes it possible to access the original image which is available from the machine which generated that image. Thus the client has knowledge of that machine as soon as he receives the thumbnail and the identifier.